package com.bupt.hotel.hvac.model.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.bupt.hotel.hvac.model.enums.ACMode;
import com.bupt.hotel.hvac.model.enums.FanSpeed;
import com.bupt.hotel.hvac.model.enums.RoomStatus;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 房间状态实体类
 */
@Data
@TableName("room_state")
public class RoomState {

    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 房间号
     */
    private String roomId;

    /**
     * 是否开机
     */
    private Boolean isOn;

    /**
     * 空调模式
     */
    private ACMode mode;

    /**
     * 当前温度
     */
    private BigDecimal currentTemp;

    /**
     * 初始温度
     */
    private BigDecimal initialTemp;

    /**
     * 目标温度
     */
    private BigDecimal targetTemp;

    /**
     * 风速
     */
    private FanSpeed fanSpeed;

    /**
     * 房间状态
     */
    private RoomStatus status;

    /**
     * 累计费用
     */
    private BigDecimal totalCost;

    /**
     * 累计耗电量
     */
    private BigDecimal totalPowerConsumption;

    /**
     * 最后更新时间
     */
    private LocalDateTime lastUpdateTime;

    /**
     * 服务开始时间
     */
    private LocalDateTime serviceStartTime;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;
}
